iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 21
0

前言

昨天介紹了如何建立 3D 模型,還有 stl 跟 dae 所包含的資料內容性質,對於純粹網格狀幾何向量式的描述再gazebo的模擬世界是行不通的,所以要將它變成 dae 檔,幫助gazebo獲取更多資訊,才能更加貼近現實,既然我們檔案的部分都準備好了!就來動手操作一遍,看看如何將昨天輸出的model模型匯入至 Gazebo 中啦 !!

導入流程

1.首先,在自己的工作區中建立models資料夾。https://ithelp.ithome.com.tw/upload/images/20201006/20129807whxDoSKuj1.png

2.在 model 資料夾中建立以下名為 test 的樹狀檔案架構,將.dae file 複製到 meshes 資料夾中,並同時與 meshes 資料夾同層建立.sdf 與.config 檔案。
https://ithelp.ithome.com.tw/upload/images/20201006/201298071NX4Szzghd.png

這邊稍微說明一下 model 資料夾中模型檔 test 的架構意義。model.sdf 是設定我們模型導入 Gazebo 中物理參數,透過調整內部參數,甚至可以讓模型變大縮小,或者是漂浮在空中等情形。test.dae 就是我們的模型檔,而model.config 就是聲明文件,可以寫一些開發者的資訊及版權,方便大家使用出問題時可以聯絡。
.config 範例
https://ithelp.ithome.com.tw/upload/images/20201006/20129807iHOv56EdNM.png
這邊在對大部分config中常見的標籤來做介紹
<name> :模型的名稱
<version> :模型版本,這裡跟sdf的版本不同只對模型資訊負責
<author>:為作者姓名還有聯絡資訊的母標籤
<description> :對這個模型的其他描述與介紹
<depend>:其他選配的裝置

3.接著是於.sdf 中建立自己的所需之模型物理參數,可以參考這篇SDF1.5ver架構,記得要將模型路徑插入。
.sdf 範例
https://ithelp.ithome.com.tw/upload/images/20201006/20129807605BIn7LNB.png
這裡再對插入模型上下分別不同的標籤做個介紹

<collision>:碰撞標籤,給機器人設定物體碰撞邊界內容的<mesh> 再包含我們模型的 .dae,<scale>中給予碰撞邊界的三圍參數

<visual>:這邊概念跟碰撞參數相同,不過是給它視覺化的範圍還有位置

4.最後只要將模型檔案路徑新增到.world 中,就可以了(不知道.world 是什麼可以看這邊)。
https://ithelp.ithome.com.tw/upload/images/20201007/20129807DWGwNKtIXD.png

5.利用先前教的使用 .launch 呼叫.world 檔案就可以啦!!
https://ithelp.ithome.com.tw/upload/images/20201006/201298078LdmNbdiCa.png

結語

經過今天的教學希望大家都已經學會如會導入模型至 Gazebo 中了。雖然步驟有點繁雜,但整體來說應該不至於到太難,但對於導入的模型不同,大小位置、依附的對象、配置到的地形都有很多種不同的設置方法,對於自己想要的方案還請慢慢摸索一下啦!筆者只是起到一個領路人的作用。明天會接著介紹導入圖片至 Gazebo 中的方法,與今天的步驟有些類似,但又有一些不同,就請大家敬請期待!!https://ithelp.ithome.com.tw/upload/images/20201006/20129807riaQ7ry7nz.png


上一篇
[DAY 20] 於Gazebo匯入3D模型1
下一篇
[DAY 22] 於Gazebo中匯入圖片
系列文
ROS系統控制自走車搭配點雲雷達(隧道檢測裝置)30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言